In three-dimensional (3-D) graphics, objects are represented using a number of techniques such as polygon mesh, modeling, etc. Among these techniques, polygon mesh representation is popular. In polygon mesh representation, an object is represented by a mesh of polygonal facets. In the general case, an object has curved surfaces and the facets are an approximation to such a surface. A polygon mesh representation is a geometric and topological description of the boundary or surface of the object.
In a typical graphics processing system polygons are used to create 3-D objects for displaying on a two-dimensional (2-D) surface such as a display. Because polygons are flat surfaces, they can only estimate curved shapes, which many objects have. Therefore, smaller polygons can more accurately represent curved objects and using smaller polygons also means more polygons are required to create the object. As a result, the more polygons that a 3-D model includes, the more smooth and realistic it will appear when displayed on the display. In some instances a scene for an application may contain more than one polygon mesh including millions of polygons to create various objects for the scene. These polygons may overlap each other from a viewpoint perspective used to display the scene on a 2-D display. When meshes are processed by a graphics processing unit (GPU) or system, they are rendered one polygon at a time. To render the polygons for polygon meshes one at a time, an order must be established. However, under certain circumstances, processing of the polygons can become stalled when overlapping polygons are processed consecutively or nearly consecutively in the order causing a performance penalty.